home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor2 / das.src < prev    next >
Text File  |  1992-08-18  |  7KB  |  345 lines

  1. %%HP: T(3)A(D)F(.);
  2. @ DAS, by Robert Bellman, Jr.
  3. DIR
  4.   STCOM
  5.     \<< DATE DUP 'D1'
  6. STO TIME DUP HMS\->
  7. 'T1' STO .0002 HMS+
  8. 'SCAN1' 5 8192 * 4
  9. \->LIST STOALARM DROP
  10.     \>>
  11.   STOP
  12.     \<< 1 DELALARM
  13.     \>>
  14.   SCAN1
  15.     \<< DROP RDCHK4
  16. DATE TIME HMS\->
  17. LAPS4 SWAP CONV4
  18.     \>>
  19.   RDCHK4
  20.     \<<
  21.       DO "1" XMIT
  22. CLOSEIO OPENIO DROP
  23. 8 SRECV SWAP DUP
  24. BYTES SWAP DROP
  25.         IF 13 \=/
  26.         THEN DROP
  27. 1.5 WAIT
  28.         ELSE SWAP
  29.         END
  30.       UNTIL 1 ==
  31.       END
  32.     \>>
  33.   CONV4
  34.     \<< 1 SWAP DUP
  35. SIZE 2 / 1 SWAP
  36.       START DUP 3
  37. PICK DUP SUB NUM
  38. SWAP DUP 4 PICK 1 +
  39. DUP SUB NUM 3 ROLL
  40. 256 * + .000152589
  41. * 3 ROLL 2 + 3 ROLL
  42.       NEXT DROP2
  43.     \>>
  44.   LAPS4
  45.     \<< SWAP D1 SWAP
  46. DDAYS DUP
  47.       IF 1 <
  48.       THEN DROP T1
  49. -
  50.       ELSE 24 * T1
  51. - +
  52.       END
  53.     \>>
  54.   STSIM
  55.     \<< DATE TIME
  56. .0002 HMS+ 'SCAN' 5
  57. 8192 * 4 \->LIST
  58. STOALARM DROP
  59.     \>>
  60.   SCAN
  61.     \<< DROP RDCHK4
  62.     \>>
  63.   DEL2
  64.     \<< OBJ\-> DROP
  65. SWAP OBJ\-> DROP \-> l
  66. r
  67.       \<< D1 OBJ\->
  68. OBJ\-> DROP DUP ROT *
  69. \-> s
  70.         \<< s 2 +
  71.           DO DUP
  72. PICK SWAP 3 PICK -
  73. SWAP
  74.           UNTIL r >
  75.           END s
  76. SWAP 3 PICK + 1 +
  77.         \>>
  78.         DO 1 4 PICK
  79.           START DUP
  80. ROLL DROP 1 - SWAP
  81. 1 - SWAP
  82.           NEXT
  83.         UNTIL DUP
  84. PICK l >
  85.         END
  86.       \>> DROP 2 PICK
  87. / SWAP 2 \->LIST
  88. \->ARRY
  89.     \>>
  90.   RANY
  91.     \<< OBJ\-> DROP \-> r
  92.       \<< D1 OBJ\->
  93. OBJ\-> DROP DUP ROT *
  94. 2 +
  95.         WHILE 2 3
  96. PICK + PICK r >
  97.         REPEAT 1 3
  98. PICK
  99.           START 3
  100. ROLL DROP 1 -
  101.           NEXT
  102.         END
  103.       \>> 2 - 2 PICK
  104. / SWAP 2 \->LIST
  105. \->ARRY
  106.     \>>
  107.   LANY
  108.     \<< OBJ\-> DROP \-> l
  109.       \<< D1 OBJ\->
  110. OBJ\-> DROP DUP ROT *
  111. 2 +
  112.         WHILE DUP
  113. PICK l <
  114.         REPEAT 1 3
  115. PICK
  116.           START DUP
  117. ROLL DROP 1 -
  118.           NEXT
  119.         END
  120.       \>> 2 - 2 PICK
  121. / SWAP 2 \->LIST
  122. \->ARRY
  123.     \>>
  124.   ORG
  125.     \<< OBJ\-> DROP
  126. DEPTH 5 / 5 2 \->LIST
  127. \->ARRY
  128.     \>>
  129.   SETCOLS
  130.     \<< SETXCOL
  131. SETYCOL FROM42
  132.     \>>
  133.   OTTO
  134.     \<< MIN\GS 1 GET
  135. DUP 'XMIN' STO MAX\GS
  136. 1 GET XRNG MIN\GS 2
  137. GET DUP 'YMIN' STO
  138. MAX\GS 2 GET YRNG
  139. SPLOT L2PLT
  140.     \>>
  141.   SPLOT
  142.     \<< ERASE { # 0d
  143. # 0d } PVIEW XMIN
  144. YMIN R\->C "COL:" XX
  145. \->STR + "COL:" Y
  146. \->STR + 3 \->LIST AXES
  147. LABEL DRAX -49 CF
  148. -50 CF EPTS
  149.     \>>
  150.   L2PLT
  151.     \<< { # 0d # 0d }
  152. PVIEW \GSDAT OBJ\->
  153. OBJ\-> DROP * 1 + DR
  154. SWAP DR ROT SWAP
  155. R\->C SWAP 1 - DUP 2
  156. / 1 - 1 SWAP
  157.       START DR SWAP
  158. DR ROT SWAP R\->C ROT
  159. SWAP LINE LASTARG
  160. SWAP DROP SWAP 2 -
  161.       NEXT DROP2
  162. GRAPH
  163.     \>>
  164.   XLIM
  165.     \<<
  166. "ENTER MINIMUM X:"
  167. "" INPUT OBJ\-> DUP
  168. 'XMIN' STO
  169. "ENTER MAXIMUM X:"
  170. "" INPUT OBJ\-> XRNG
  171.     \>>
  172.   YLIM
  173.     \<<
  174. "ENTER MINIMUM Y:"
  175. "" INPUT OBJ\-> DUP
  176. 'YMIN' STO
  177. "ENTER MAXIMUM Y:"
  178. "" INPUT OBJ\-> YRNG
  179.     \>>
  180.   FROM42
  181.     \<< D1 TRN OBJ\->
  182. DUP OBJ\-> DROP * DUP
  183. 3 ROLLD 2 + ROLLD
  184. \->LIST DUP 3 PICK
  185. OBJ\-> DROP SWAP DROP
  186. DUP DUP XX * SWAP -
  187. 1 + SWAP XX * SUB
  188. SWAP 3 PICK OBJ\->
  189. DROP SWAP DROP DUP
  190. DUP Y * SWAP - 1 +
  191. SWAP Y * SUB + OBJ\->
  192. 1 + ROLL OBJ\-> SWAP
  193. ROT DROP 2 \->LIST
  194. \->ARRY TRN STO\GS
  195.     \>>
  196.   SETYCOL
  197.     \<<
  198. "ENTER Y COLUMN:"
  199. "" INPUT OBJ\-> 'Y'
  200. STO
  201.     \>>
  202.   DR
  203.     \<< DUP ROLL
  204.     \>>
  205.   SETXCOL
  206.     \<<
  207. "ENTER X COLUMN:"
  208. "" INPUT OBJ\-> 'XX'
  209. STO
  210.     \>>
  211.   ASTR
  212.     \<< OBJ\-> SWAP
  213. \->STR ", " + SWAP +
  214.     \>>
  215.   EPTS
  216.     \<< DEC PPAR OBJ\->
  217. 6 DROPN ASTR 1
  218. \->GROB SWAP ASTR 1
  219. \->GROB { # 5d # 56d
  220. } SWAP PICT 3 ROLLD
  221. GOR PICT SWAP DUP
  222. SIZE DROP 131 SWAP
  223. - # 3d 2 \->LIST SWAP
  224. GOR
  225.     \>>
  226.   LOTTO
  227.     \<< LSPLT LGPLT
  228.     \>>
  229.   LSPLT LEPTS
  230.   LGPLT
  231.     \<< { # 0d # 0d }
  232. PVIEW \GSDAT OBJ\->
  233. OBJ\-> DROP * 1 + DR
  234. SWAP DR ROT LOG
  235. SWAP R\->C SWAP 1 -
  236. DUP 2 / 1 - 1 SWAP
  237.       START DR SWAP
  238. DR ROT LOG SWAP R\->C
  239. ROT SWAP LINE
  240. LASTARG SWAP DROP
  241. SWAP 2 -
  242.       NEXT DROP2
  243. GRAPH
  244.     \>>
  245.   DRSEM
  246.     \<< DUP2 CHKPN
  247.       IF 1 \=/
  248.       THEN ABS SWAP
  249. ABS +
  250.       ELSE - ABS
  251.       END DUP 130
  252. SWAP / DUP \-> b
  253.       \<< 0 ROT 1
  254. SWAP
  255.         START 1 1 9
  256.           START DUP
  257. LOG 4 PICK * 3 PICK
  258. + LNE 1 +
  259.           NEXT DROP
  260. b + DUP LLNE
  261.         NEXT
  262.       \>> DROP2 64 10
  263. / DUP \-> c
  264.       \<< 64 1 10
  265.         START DUP
  266. HLNE c -
  267.         NEXT
  268.       \>> DROP2 {
  269. # 0d # 63d } DUP {
  270. # 0d # 0d } LINE {
  271. # 130d # 63d } LINE
  272.     \>>
  273.   LNE
  274.     \<< \-> a
  275.       \<< a # 0d +
  276. # 61d 2 \->LIST a
  277. # 0d + # 62d 2
  278. \->LIST LINE
  279.       \>>
  280.     \>>
  281.   LLNE
  282.     \<< \-> a
  283.       \<< a # 0d +
  284. # 59d 2 \->LIST a
  285. # 0d + # 63d 2
  286. \->LIST LINE
  287.       \>>
  288.     \>>
  289.   HLNE
  290.     \<< \-> a
  291.       \<< a # 0d +
  292. # 2d SWAP 2 \->LIST a
  293. # 0d + # 0d SWAP 2
  294. \->LIST LINE
  295.       \>>
  296.     \>>
  297.   YMIN 0
  298.   XMIN .0010155911
  299.   CHKPN
  300.     \<< SIGN SWAP
  301. SIGN +
  302.       IF 0 \=/
  303.       THEN 1
  304.       ELSE -1
  305.       END
  306.     \>>
  307.   Y 2
  308.   XX 1
  309.   PPAR {
  310. (.0010155911,0)
  311. (.03439643,7.503869253)
  312. X 0 {
  313. (.0010155911,0)
  314. "COL:1" "COL:2" }
  315. SCATTER Y }
  316.   \GSDAT 0
  317.   T1 12.5151329208
  318.   D1
  319. [[ .0010155911 7.503869253 5.003851077 5.003851077 4.964788293 ]
  320.  [ .0023804728 .997016526 .996711348 .996711348 .997321704 ]
  321.  [ .003769633 .996863937 .996711348 .996711348 .997321704 ]
  322.  [ .0051616075 .997321704 .997169115 .997169115 .997626882 ]
  323.  [ .0065531753 .998084649 .99793206 .997779471 .998237238 ]
  324.  [ .0079486422 0 0 0 0 ]
  325.  [ .009793735 1.999984023 2.000136612 2.000136612 2.000746968 ]
  326.  [ .0107279458 2.001204735 2.000289201 1.999678845 2.000746968 ]
  327.  [ .0121211411 1.992964929 1.992659751 1.99281234 1.993270107 ]
  328.  [ .0135182019 1.999831434 2.000136612 1.999373667 2.000746968 ]
  329.  [ .0149083455 2.001204735 2.001052146 2.000746968 2.001815091 ]
  330.  [ .0162999811 3.004324821 3.003714465 3.003561876 3.005240355 ]
  331.  [ .0176919894 2.992117701 2.991659934 2.991354756 2.992728057 ]
  332.  [ .0197528414 3.003867054 3.003256698 3.002798931 3.004172232 ]
  333.  [ .020568305 3.003104109 3.002341164 3.001883397 3.003714465 ]
  334.  [ .0218668958 4.004240538 4.003325004 4.002867237 4.004698305 ]
  335.  [ .0232599555 4.004545716 4.004087949 4.003630182 4.005613839 ]
  336.  [ .0246550497 6.010175532 6.009870354 6.009412587 6.012311778 ]
  337.  [ .0260440064 6.010328121 6.008802231 6.008649642 6.011396244 ]
  338.  [ .0274358114 6.009717765 6.008802231 6.008497053 6.011396244 ]
  339.  [ .0288277519 3.003561876 3.003104109 3.002798931 3.004172232 ]
  340.  [ .0302229816 3.005392944 3.00447741 3.004324821 3.005850711 ]
  341.  [ .0316119722 1.999984023 1.999678845 1.999526256 2.000289201 ]
  342.  [ .0330037094 2.002120269 2.001052146 2.000746968 2.001815091 ]
  343.  [ .03439643 1.999373667 1.999068489 1.998763311 1.999678845 ]]
  344. END
  345.